array.reduce((acc, cur, index, arr) => {
  //...
}, initialValue)

// acc：累计值（上一次返回的结果）
// cur：当前元素
// index：当前元素的索引
// arr：正在被遍历的原数组
// initialValue：初始值（可选